A Field Programmable Gate Array (FPGA) is an integrated circuit implemented as an array of programmable logic blocks.
A conventional Static Random Access Memory (SRAM)-based FPGA is a spotlighted integrated circuit because of its high performance, low price, and re-programmability, and has been widely used, especially for remote control systems.
From the standpoint of the environment, such an SRAM-based FPGA may exert a major influence on circuit functionality due to the influence of emissions or radiation. For example, Single Event Effect (SSE) may cause a fault in an FPGA system because charged particles present in the air collide with silicon. Further, due to the SSE, memory devices of an FPGA implemented using Complementary metal-oxide-semiconductor (CMOS) or the like may cause transient faults or stuck-at faults depending on the amount of energy transferred by the charged particles. Such transient faults may appear to a degree in which bit inversion occurs in memory devices, whereas stuck-at faults may appear as permanent defects. In this environment, programmable devices need fault-tolerant or self-healing logic blocks to continue to operate.